    /**
     * @param {string} s
     * @param {string} p
     * @return {boolean}
     */
    var isMatch = function (s, p) {
        // debugger
        let sLen = s.length
        let pLen = p.length
        let j = 0
        let anyNum = ''
        for (let i = 0; i < pLen; i++) {
            // 如果正则的第一个字符是 . 
            if (p[i] === '.') {
                // 并且正则的第二个字符是 * 那么表示可以匹配任何字符
                if (p[i + 1] === '*') return true
                // 如果第一个字符不是
                j++
                continue
            }
            // 如果正则的第二个字符是 * 那么表示匹配 多个p[i]
            if (p[i + 1] === '*') {
                anyNum = p[i]
            } else {
                if (anyNum !== '') {
                    // 循环判断s[j]以后是否都是 p[i]
                    while (s[j] === anyNum) {
                        j++
                    }
                    anyNum = ''
                } else if (p[i] !== s[j++]) return false
            }
        }
        // 如果j的长度刚好等于s的len 表示正好匹配
        if (j === sLen) return true
        else return false
    };


    isMatch("ab", "a3")